package com.yyh.fanxing;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Random;

/*随机验证码。
- 随机生成十组六位字符组成的验证码。
- 验证码由大小写字母、数字字符组成。
开发提示：
- 使用字符数组保存原始字符，利用Random类生成随机索引。
- 将十组验证码放到集合中
- 用Iterator迭代器遍历集合
*/
public class Demo5 {
    public static void main(String[] args) {
        // 字符数组保存原始字符
        char[] chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".toCharArray();

        // 将十组验证码放到集合中
        List<String> codes = new ArrayList<>();
        Random random = new Random();

        // 生成十组六位验证码
        for (int i = 0; i < 10; i++) {
            StringBuilder code = new StringBuilder();
            for (int j = 0; j < 6; j++) {
                int index = random.nextInt(chars.length);
                code.append(chars[index]);
            }
            codes.add(code.toString());
        }

        // 用Iterator迭代器遍历集合
        Iterator<String> iterator = codes.iterator();
        while (iterator.hasNext()) {
            System.out.println( "随机验证码： " + iterator.next());
        }

    }
}
